iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 2
8
Software Development

前端工程師用 javaScript 學演算法系列 第 2

什麼是演算法 (Algorithm)

  • 分享至 

  • xImage
  •  

演算法 (Algorithm) 簡單來說就是解決問題的方法

想知道更精確的解釋可以看維基百科(但我很怕你點開來就放棄學習了)


https://ithelp.ithome.com.tw/upload/images/20190903/20106426hq7KqlpV6g.jpg
用圖書館找書來形容演算法,下列方式都可以達成目的,但哪個最快?
一 : 從第一個書櫃的第一本書開始找直到找到為止
二 : 用圖書館裡電腦提供的搜索書本網站找

相信大家答案都跟我一樣,所以 答案二 就是此題最好的演算法

下面這個影片很容易懂,也清楚說明演算法是什麼,建議大家先看一下
Yes
看完影片會更清楚實務上怎麼處理,通常會先 step by step 把步驟全部寫下來,繼續用圖書館找書來分解步驟

從第一個書櫃的第一本書開始找直到找到為止

  1. 從第一本書開始找 N = 0
  2. for loop each book in library (整個圖書館的書)
    set N = N+1 從第一本開始翻,不是的話就翻下一本

用圖書館電腦提供的搜索書本網站找

  1. 輸入你要找的書名 N = 0
  2. 在電腦輸入一次後找到位置 N =1

若今天圖書館有 10 本書,那法一就是法二 10 倍慢;如果有一萬本書,法一花的時間就是法二 10,000 了!所以演算法並沒有離我們這麼遠而是實際會發生在日常生活的,看到這邊是不是迫不急待學好演算法讓生活變得更美好了呢!

下一篇會介紹評量演算法好還是壞的指標 Big O

如有錯誤或需要改進的地方,拜託跟我說。
我會以最快速度修改,感謝您

歡迎追蹤我的部落格,除了技術文也會分享一些在矽谷工作的甘苦。


上一篇
開始用 javaScript 學演算法囉之前言
下一篇
評量演算法好壞的 Big O
系列文
前端工程師用 javaScript 學演算法32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0

這個開頭影片很有趣XD 讓我對學Algorithm越來越有動力了

我要留言

立即登入留言